package sv.com.seguros.dto.asg;

import java.io.Serializable;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

import sv.com.seguros.dto.ctg.CtgAseguradora;
import sv.com.seguros.dto.ctg.CtgAsesor;
import sv.com.seguros.dto.ctg.CtgCatalogo;
import sv.com.seguros.dto.ctg.CtgPlan;
import sv.com.seguros.dto.sgd.SgdUsuario;

@Entity
@Table(name = "asg_poliza")
public class AsgPoliza implements Serializable{

	private static final long serialVersionUID = -5532863553030823133L;
	
	@Id
	@Column(name = "asg_pol_id")
	@GeneratedValue(strategy = GenerationType.IDENTITY)
	private Long asgPolizaId;
	@Column(name = "asg_pol_numero", nullable = false, length = 20)
	private String asgPolizaNumero;
	@Column(name = "asg_pol_suma_asegurada", length = 30)
	private String asgPolizaSumaAsegurada;
	@Column(name = "asg_pol_prima", length = 10, nullable = false)
	private String asgPolizaPrima;
	@Column(name = "asg_pol_cuota_inicial", length = 10, nullable = false)
	private String asgPolizaCuotaInicial;
	@Column(name = "asg_pol_cantidad_cuota", length = 5)
	private String asgPolizaCantidadCuota;
	@Column(name = "asg_pol_fecha_inicio", length = 8, nullable = false)
	private String asgPolizaFechaInicio;
	@Column(name = "asg_pol_fecha_finalizacion", length = 8, nullable = false)
	private String asgPolizaFechaFinalizacion;
	@Column(name = "asg_pol_fecha_creacion", nullable = false, length = 14, updatable = false)
	private String asgPolizaFechaCreacion;
	@Column(name = "asg_pol_renovada", length = 1, updatable = false)
	private String asgPolizaRenovada = "0";
	@Column(name = "asg_pol_fecha_renovacion", length = 14, updatable = false)
	private String asgPolizaFechaRenovacion = "0";
	@Column(name = "asg_pol_anterior", length = 20)
	private String asgPolizaAnterior;
	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "asg_cli_id", nullable = false)
	private AsgCliente asgCliente;
	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "ctg_tseg_id", nullable = false)
	private CtgCatalogo ctgTipoSeguro;
	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "ctg_plan_id", nullable = false)
	private CtgPlan ctgPlan;
	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "ctg_ase_id", nullable = false)
	private CtgAsesor ctgAsesor;
	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "sgd_usu_id", nullable = false)
	private SgdUsuario sgdUsuario;
	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "ctg_fpago_id")
	private CtgCatalogo ctgFormaPago;
	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "ctg_asg_id", nullable = false)
	private CtgAseguradora ctgAseguradora;

	public Long getAsgPolizaId() {
		return asgPolizaId;
	}

	public void setAsgPolizaId(Long asgPolizaId) {
		this.asgPolizaId = asgPolizaId;
	}

	public String getAsgPolizaNumero() {
		return asgPolizaNumero;
	}

	public void setAsgPolizaNumero(String asgPolizaNumero) {
		this.asgPolizaNumero = asgPolizaNumero;
	}

	public String getAsgPolizaSumaAsegurada() {
		return asgPolizaSumaAsegurada;
	}

	public void setAsgPolizaSumaAsegurada(String asgPolizaSumaAsegurada) {
		this.asgPolizaSumaAsegurada = asgPolizaSumaAsegurada;
	}

	public String getAsgPolizaPrima() {
		return asgPolizaPrima;
	}

	public void setAsgPolizaPrima(String asgPolizaPrima) {
		this.asgPolizaPrima = asgPolizaPrima;
	}

	public String getAsgPolizaCuotaInicial() {
		return asgPolizaCuotaInicial;
	}

	public void setAsgPolizaCuotaInicial(String asgPolizaCuotaInicial) {
		this.asgPolizaCuotaInicial = asgPolizaCuotaInicial;
	}

	public String getAsgPolizaCantidadCuota() {
		return asgPolizaCantidadCuota;
	}

	public void setAsgPolizaCantidadCuota(String asgPolizaCantidadCuota) {
		this.asgPolizaCantidadCuota = asgPolizaCantidadCuota;
	}

	public String getAsgPolizaFechaInicio() {
		return asgPolizaFechaInicio;
	}

	public void setAsgPolizaFechaInicio(String asgPolizaFechaInicio) {
		this.asgPolizaFechaInicio = asgPolizaFechaInicio;
	}

	public String getAsgPolizaFechaFinalizacion() {
		return asgPolizaFechaFinalizacion;
	}

	public void setAsgPolizaFechaFinalizacion(String asgPolizaFechaFinalizacion) {
		this.asgPolizaFechaFinalizacion = asgPolizaFechaFinalizacion;
	}

	public String getAsgPolizaFechaCreacion() {
		return asgPolizaFechaCreacion;
	}

	public void setAsgPolizaFechaCreacion(String asgPolizaFechaCreacion) {
		this.asgPolizaFechaCreacion = asgPolizaFechaCreacion;
	}

	public String getAsgPolizaRenovada() {
		return asgPolizaRenovada;
	}

	public void setAsgPolizaRenovada(String asgPolizaRenovada) {
		this.asgPolizaRenovada = asgPolizaRenovada;
	}

	public String getAsgPolizaAnterior() {
		return asgPolizaAnterior;
	}

	public void setAsgPolizaAnterior(String asgPolizaAnterior) {
		this.asgPolizaAnterior = asgPolizaAnterior;
	}

	public AsgCliente getAsgCliente() {
		return asgCliente;
	}

	public void setAsgCliente(AsgCliente asgCliente) {
		this.asgCliente = asgCliente;
	}

	public CtgCatalogo getCtgTipoSeguro() {
		return ctgTipoSeguro;
	}

	public void setCtgTipoSeguro(CtgCatalogo ctgTipoSeguro) {
		this.ctgTipoSeguro = ctgTipoSeguro;
	}

	public CtgPlan getCtgPlan() {
		return ctgPlan;
	}

	public void setCtgPlan(CtgPlan ctgPlan) {
		this.ctgPlan = ctgPlan;
	}

	public CtgAsesor getCtgAsesor() {
		return ctgAsesor;
	}

	public void setCtgAsesor(CtgAsesor ctgAsesor) {
		this.ctgAsesor = ctgAsesor;
	}

	public SgdUsuario getSgdUsuario() {
		return sgdUsuario;
	}

	public void setSgdUsuario(SgdUsuario sgdUsuario) {
		this.sgdUsuario = sgdUsuario;
	}

	public CtgCatalogo getCtgFormaPago() {
		return ctgFormaPago;
	}

	public void setCtgFormaPago(CtgCatalogo ctgFormaPago) {
		this.ctgFormaPago = ctgFormaPago;
	}

	public CtgAseguradora getCtgAseguradora() {
		return ctgAseguradora;
	}

	public void setCtgAseguradora(CtgAseguradora ctgAseguradora) {
		this.ctgAseguradora = ctgAseguradora;
	}

	public String getAsgPolizaFechaRenovacion() {
		return asgPolizaFechaRenovacion;
	}

	public void setAsgPolizaFechaRenovacion(String asgPolizaFechaRenovacion) {
		this.asgPolizaFechaRenovacion = asgPolizaFechaRenovacion;
	}

}
